#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
    Module Documentation
    here
"""

# Created by  : Zhang Chengdong
# Create Date : 2025/2/27 14:22
# Version = v0.1.0

__author__ = "Zhang Chengdong"
__copyright__ = "Copyright 2024. Large scale model"
__credits__ = ['Zhang Chengdong']

__liscence__ = "MIT"
__version__ = "1.0.1"
__maintainer__ = "Zhang Chengdong"
__status__ = "Production"

import os
from pydantic import BaseModel


class DatabaseInfo(BaseModel):
    """
    测试端或者服务端的mongodb数据库信息
    """
    platform_type: int = 2
    current_dir: str = os.path.dirname(os.path.abspath(__file__))
    parent_dir: str = os.path.dirname(current_dir)
    save_path: str = os.path.join(current_dir, "general_model")
    nonlinear_result_collect: str = "algorithm_nonlinear_result"
    database_name: str = "cement_ingredient"
    learning_collection_prefix: str = "QUALITY_INSPECTION_AVERAGE_"
    mongo_uri: str = None
    dictionary: str = "DICTIONARY_1"

    periodic_interval: int = None
    initial_interval: int = None
    query_api: str = None
    upload_api: str = None
    register_api: str = None
    deploy_api: str = None
    monitor_api: str = None

    get_all_tenant_api: str = "http://base:8080/api/v1/customer_tenant/all"
    headers: dict = None

    model_name: str = "CatBoost"

    parameters_for_3: dict = None
    parameters_for_28: dict = None

    mas_model_type: str = None
    train_optuna: dict = None
    model_type_suffix: dict = None